<?php

use Illuminate\Database\Seeder;
use App\Models\User;

class UsersTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        //获取Faker实例
        $faker = app(Faker\Generator::class);

        //头像假数据
        $avatars = [
            'https://iocaffcdn.phphub.org/uploads/images/201710/14/1/s5ehp11z6s.png?imageView2/1/w/200/h/200',
            'https://iocaffcdn.phphub.org/uploads/images/201710/14/1/Lhd1SHqu86.png?imageView2/1/w/200/h/200',
            'https://iocaffcdn.phphub.org/uploads/images/201710/14/1/LOnMrqbHJn.png?imageView2/1/w/200/h/200',
            'https://iocaffcdn.phphub.org/uploads/images/201710/14/1/xAuDMxteQy.png?imageView2/1/w/200/h/200',
            'https://iocaffcdn.phphub.org/uploads/images/201710/14/1/ZqM7iaP4CR.png?imageView2/1/w/200/h/200',
            'https://iocaffcdn.phphub.org/uploads/images/201710/14/1/NDnzMutoxX.png?imageView2/1/w/200/h/200',
        ];

        //生成数据集合
        $users = factory(User::class)
                    ->times(10)
                    ->make()
                    ->each(function($user,$index)
                        use($faker,$avatars)
                    {
                        //从头像数据中随机抽取
                        $user->avatar = $faker->randomElement($avatars);
                    });

        //将隐藏数据可见并将数据集合转为数组
        $user_array = $users->makeVisible(['password','remember_token'])->toArray();
        User::insert($user_array);

        //单独处理第一个数据
        $user = User::find(1);
        $user->name = "kirito";
        $user->email = "18624275868@163.com";
        $user->avatar = "https://iocaffcdn.phphub.org/uploads/images/201710/14/1/ZqM7iaP4CR.png?imageView2/1/w/200/h/200";
        $user->introduction = "弱小即是罪恶";
        $user->save();
    }
}
